package com.carb.service;

import com.carb.dto.BusinessAddDTO;
import com.carb.dto.BusinessPageQueryDTO;
import com.carb.entity.Business;
import com.baomidou.mybatisplus.extension.service.IService;
import com.carb.enums.BusinessStatus;
import com.carb.result.PageResult;
import com.carb.vo.BusinessVO;

import java.util.List;

/**
 * <p>
 * 业务管理 服务类
 * </p>
 *
 * @author XuChaoyang
 * @since 2025-01-18
 */
public interface IBusinessService extends IService<Business> {

    void addBusiness(BusinessAddDTO businessAddDTO);

    PageResult<BusinessVO> pageQuery(BusinessPageQueryDTO businessPageQueryDTO);

    BusinessVO getBusinessById(Long id);

    void acceptBusiness(Long id);

    void completeBusiness(Long id);

    void refundBusiness(Long id);

    Long countBusinessForMember(BusinessStatus businessStatus);

    List<BusinessVO> listBusinessForMember(BusinessStatus businessStatus);

    void addBusinessForMember(BusinessAddDTO businessAddDTO);
}
